package com.groupseven.backend.mapper;

import com.groupseven.backend.domain.Paper.Paper;
import com.groupseven.backend.domain.Patent.Patent;
import com.groupseven.backend.domain.PrizeProduct.PrizeProduct;
import com.groupseven.backend.domain.Program.Program;
import com.groupseven.backend.domain.Program.ProgramApplication;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface ProgramAduitMapper {
    List<Program> selectprogramsByApprovalStatus();
    List<Paper> selectpapersByApprovalStatus();
    List<Patent> selectpatentsByApprovalStatus();
    List<PrizeProduct> selectprizeproductsByApprovalStatus();
    List<ProgramApplication> selectprogramApplicationByApprovalStatus();


    List<Program> selectprograms();
    List<Paper> selectpapers();
    List<Patent> selectpatents();
    List<PrizeProduct> selectprizeproducts();
    List<ProgramApplication> selectprogramApplication();


    int updateprogramsByApprovalStatus(Program program);
    int updatepapersByApprovalStatus(Paper paper);
    int updatepatentsByApprovalStatus(Patent patent);
    int updateprizeproductsByApprovalStatus(PrizeProduct prizeProduct);
    int updateprogramApplicationByApprovalStatus(ProgramApplication programApplication);

    int updateNOprogramsByApprovalStatus(Program program);
    int updateNOpapersByApprovalStatus(Paper paper);
    int updateNOpatentsByApprovalStatus(Patent patent);
    int updateNOprizeproductsByApprovalStatus(PrizeProduct prizeProduct);
    int updateNOprogramApplicationByApprovalStatus(ProgramApplication programApplication);


    //
    List<Program> selectprogramsByApprovalStatusandUsername(String username);
    List<Paper> selectpapersByApprovalStatusandUsername(String username);
    List<Patent> selectpatentsByApprovalStatusandUsername(String username);
    List<PrizeProduct> selectprizeproductsByApprovalStatusandUsername(String username);
    //
}
